package com.niiwoo.civet.account.dao.mapper;

import com.niiwoo.civet.account.dao.entity.AccountCheckingCommission;
import com.niiwoo.civet.account.dto.request.AccountCheckingCommissionRequestDTO;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;

public interface AccountCheckingCommissionMapperExt extends AccountCheckingCommissionMapper {

    /**
     *
     * @param accountCheckingCommissionRequestDTO
     * @return
     */
    public List<AccountCheckingCommission> queryCheckingCommissionPage(AccountCheckingCommissionRequestDTO accountCheckingCommissionRequestDTO);

    /**
     * 批量修改
     * @param accountCheckingCommissionList
     * @return
     */
    public int updateBatch(List<AccountCheckingCommission> accountCheckingCommissionList);

    /**
     * 根据对账记录删除ID
     * @param checkingRecordId
     * @return
     */
    int deleteByCheckingRecordId(@Param("checkingRecordId") Long checkingRecordId);

    /**
     * 根据比对记录ID修改状态
     * @param checkingRecordId
     * @param status
     * @return
     */
    int updateStatusByCheckingRecordId(@Param("checkingRecordId") Long checkingRecordId, @Param("status") Byte status);

    /**
     * 批量添加
     * @param accountCheckingCommissionList
     * @return
     */
    int insertBatch(List<AccountCheckingCommission> accountCheckingCommissionList);

    BigDecimal selectTotalWithdrawFeeAmount(Long checkRecordId);

}